Мне нужно переключиться с Python на C/С++. 
Знаете ли вы быстрый "справочный учебник" или что-то в этом роде, чтобы иметь ссылку на то, как начать? Например, что-то вроде уроков Numpy и Scipy. 
Я прочитал много "документации", например
- С++ для чайников
 - Язык программирования K & R C
 - много блога и онлайн-документации, например: http://eli.thegreenplace.net/2010/01/11/pointers-to-arrays-in-c/,
 - http://newdata.box.sk/bx/c/
 - тон Q & A здесь, на StackOverflow
 - ...
 
но мне все еще не ясно, как начать портировать на C/С++ что-то вроде:
#!/usr/bin/env python
import time
import numpy as np
import tables as tb
"""Retrieve 3D positions form 1000 files and store them in one single HDF5 file.
"""
t = time.time()
# Empty array
sample = np.array([])
sample.shape = (0,3)
# Loop over the files
for i in range(0, 1000):
  filename = "mill2sort-"+str(i)+"-extracted.h5"
  print "Doing ", filename
  # Open data file
  h5f = tb.openFile(filename, 'r')
  # Stack new data under previous data
  sample = np.vstack((sample, h5f.root.data.read()))
  h5f.close()
# Create the new file
h5 = tb.openFile("mill2sort-extracted-all", 'w')
# Save the array
h5.createArray(h5.root, 'data', sample, title='mill_2_sub_sample_all')
h5.flush()
h5.close()
print "Done in ", time.time()-t, " seconds."
в C или С++. В этом примере я даже не мог понять, как передать 3D-массив функции, которая находит ее размеры, что-то вроде
int getArrayDimensions(int* array, int *dimensions){
  *dimensions = sizeof(*array)/sizeof(array[0]);
  return 0;
}
С массивом
int array[3][3][3] = ...
Спасибо за любое предложение!:)